#include<iostream>
#include<string>
using namespace std;
#define N 100010
//oj题恰恰要避免工程的写法,尽量空间换时间,不考虑内存泄漏,少考虑代码可读性.
int st[N];
int i=0;
void push(int x){
    st[i++]=x;
}
void pop(){
    i--;
}
bool isempty(){
    return i==0;
}
int query(){
    return st[i-1];
}
int main(){
    int m;
    cin>>m;
    while(m--){
        string req;
        cin>>req;
        if(req==string("push")){
            int x;
            cin>>x;
            push(x);
        }
        else if(req==string("pop")){
            pop();
        }
        else if(req==string("query")){
            cout<<query()<<endl;
        }
        else{
            cout<<(isempty()?"YES":"NO")<<endl;
        }
    }
    return 0;
}